package com.luoluo.bean;

import java.io.Serializable;
import java.sql.Date;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;

import com.luoluo.lucene.Searchable;

public class Document implements Serializable, Searchable {

	private static final long serialVersionUID = 1754474029022705388L;
	private long id;
	private String title;
	private byte type;
	private String author;
	private String isbn;
	private String content;
	private String path;
	private String publish;
	private Date publish_time;
	private Timestamp create_time;

	public long getId() {
		return id;
	}

	public void setId(long id) {
		this.id = id;
	}

	public String getTitle() {
		return title;
	}

	public void setTitle(String title) {
		this.title = title;
	}

	public byte getType() {
		return type;
	}

	public void setType(byte type) {
		this.type = type;
	}

	public String getAuthor() {
		return author;
	}

	public void setAuthor(String author) {
		this.author = author;
	}

	public String getContent() {
		return content;
	}

	public void setContent(String content) {
		this.content = content;
	}

	public String getPath() {
		return path;
	}

	public void setPath(String path) {
		this.path = path;
	}

	public String getIsbn() {
		return isbn;
	}

	public void setIsbn(String isbn) {
		this.isbn = isbn;
	}

	public String getPublish() {
		return publish;
	}

	public void setPublish(String publish) {
		this.publish = publish;
	}

	public Date getPublish_time() {
		return publish_time;
	}

	public void setPublish_time(Date publish_time) {
		this.publish_time = publish_time;
	}

	public Timestamp getCreate_time() {
		return create_time;
	}

	public void setCreate_time(Timestamp create_time) {
		this.create_time = create_time;
	}

	@Override
	public int compareTo(Searchable paramT) {
		// TODO Auto-generated method stub
		return 0;
	}

	@Override
	public long id() {
		// TODO Auto-generated method stub
		return this.id;
	}

	@Override
	public List<String> storeFields() {
		// TODO Auto-generated method stub
		return new ArrayList<String>() {
			{
				add("isbn");
				add("publish_time");
				add("type");
			}
		};
	}

	@Override
	public List<String> indexFields() {
		// TODO Auto-generated method stub
		return new ArrayList<String>() {
			{
				add("title");
				add("author");
				add("content");
			}
		};
	}

	@Override
	public float boost() {
		// TODO Auto-generated method stub
		return 0;
	}

	@Override
	public Map<String, String> extendStoreDatas() {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public Map<String, String> extendIndexDatas() {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public List<? extends Searchable> ListAfter(long id, int count) {
		// TODO Auto-generated method stub
		return null;
	}

}
